#ifndef CRYPTMANAGER_H_
#define CRYPTMANAGER_H_

#define SAFEREL(x) {if(x) (x)->Release();(x)=NULL;}
#define SAFEDEL(x) {if(x) delete (x);(x)=NULL;}
#define SAFEDELA(x) {if(x) delete[] (x);(x)=NULL;}

class CryptManager {
public:
	CryptManager();
	virtual ~CryptManager();

	void ClientPassHash(char* username, char* password, unsigned char* digest);
	DWORD Crc32(BYTE* buf, DWORD len);
private:
	int table[256];

};

#endif /* CRYPTMANAGER_H_ */
